<template>
  <view>
    123
    <!-- <input type="file" id="boheimg" @change="fileUpload" /> -->
    <button @click="upImage">上传图片</button>
    <!-- {{src.tempFilePath}} -->
    <view class="image-content">
      <image style="width: 100%; height: 7rem; background-color: #eeeeee;" :src="src"></image>
      <image style="width: 100%; height: 7rem; background-color: #eeeeee;" :src="base64"></image>
      <image style="width: 100%; height: 7rem; background-color: #eeeeee;" :src="newImg"></image>
      <!-- <image :src='urlImg.replace(/[\r\n]/g, "")'></image> -->

    </view>
  </view>
</template>
<script>
  import { pathToBase64 } from '../../js_sdk/mmmm-image-tools/index.js'
  // import Axios from 'axios'
  export default {
    data() {
      return {
        src: '',
        base64: '',
        urlImg: '',
        newImg: ''
      }
    },
    // 此处仅提供一个简单的示例，具体实现起来方案有很多，可按需开发
    methods: {
      fileupload() {
        // console.log(event)

        // let file = event.target.files
        // let formData = new FormData()
        // formData.append('fileArray', file[0])
        // formData.append('uploadedFile', file[0])
        // formData.append('api_token', '你的token')
        // formData.append('mode', '命名方式')
        // formData.append('uploadPath', '上传目录')
        // formData.append('watermark', '是否开启水印')

        // 选择图片
        // 聚合图床
        // uni.request({
        //   url: 'https://api.superbed.cn/upload',
        //   method: 'POST',
        //   header: { 'content-type': 'application/x-www-form-urlencoded' },
        //   data: {
        //     token: '61c898afcbbf417c9675a04d251f3a5b',
        //     src: this.src
        //   },
        //   success: function(res) {
        //     console.log('成功啦！')
        //     console.log(res)
        //     console.log(res.data)
        //   },
        //   fail: function(err) {
        //     console.error(err)
        //   }
        // })

        // holle图床 &format=json
        // uni.request({
        //   url: `https://www.helloimg.com/newapi/2/upload/?login-subject='tanmengxun'&password='2647864709Gf'&source=${this.base64}`,
        //   method: 'get',
        //   success: res => {
        //     console.log(res.data)
        //   }
        // })


        // 文件上传

        // 通过文件上传
        // uni.uploadFile({
        //   url: 'https://api.superbed.cn/upload',
        //   filePath: 'demo.jpg',
        //   name: 'file',
        //   formData: { token: '123456789' },
        //   success: function(res) {
        //     console.log(res.data)
        //   },
        //   fail: function(err) {
        //     console.error(err)
        //   }
        // })
        // uni.request({
        //   url: 'https://api.superbed.cn/upload', //仅为示例，并非真实接口地址。
        //   method: 'post',
        //   data: { token: '123456789', file: '' },
        //   // header: { 'custom-header': 'hello' }, //自定义请求头信息
        //   success: res => {
        //     console.log(res.data)
        //     // this.text = 'request success'
        //   }
        // })
        // Axios.post('你的接口地址', formData)
        //   .then(res => {
        //     let data = res.data
        //     console.log(data)
        //   }).catch(e => {
        //     console.log(e)
        //   })

      },

      upImage() {
        let _this = this
        uni.chooseMedia({
          count: 1, //最多可以选择的文件个数
          mediaType: ['image'], //文件类型
          sourceType: ['album', 'camera'], //图片和视频选择的来源
          // maxDuration: 30,//拍摄视频最长拍摄时间，单位秒。时间范围为 3s 至 30s 之间
          // camera: 'back',//仅在 sourceType 为 camera 时生效，使用前置或后置摄像头
          success(res) {
            console.log('图片路径')
            console.log(res.tempFiles)
            _this.src = res.tempFiles[0].tempFilePath
            console.log('src.tempFilePath:' + _this.src)
            // console.log('src:' + _this.src[0].tempFilePath)
            console.log(JSON.stringify(res.tempFiles))
            _this.fileupload()
            //解决跨越问题，让通过微信上传的图片你能够展示在浏览器前端
            uni.getImageInfo({
              src: res.tempFiles[0].tempFilePath,
              success: path => {
                pathToBase64(path.path).then(base64 => {
                    // console.log(base64) // 这就是转为base64格式的图片
                    _this.base64 = base64
                    _this.imgUrl = 'data:image/png;base64,' + base64
                    _this.updateAdmin()
                  })
                  .catch(error => {
                    console.error(error)
                  })
              }
            })
          },
          fail(res) {
            console.log(res)
          }
        })
      },
      // 修改管理员信息
      async updateAdmin() {
        let _this = this
        const { data: res } = uni.request({
          url: 'http://127.0.0.1:3007/api/updateAdmin',
          method: 'post',
          data: {
            name: '客服小妹',
            password: '123456',
            id: '90000000',
            sex: '女',
            image: _this.src
          },
          header: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8' },
          success: res => {
            console.log(res.data)
            // 修改后，获取admin信息
            this.getAdmin()
          }
        })
      },
      // 获取admin信息
      async getAdmin() {
        const { data: res } = uni.request({
          url: 'http://127.0.0.1:3007/api/loginAdmin',
          method: 'post',
          data: {
            name: '客服小妹',
            password: '123456',
          },
          header: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8' },
          success: res => {
            console.log({ ...res })
            console.log(res.data.data.admin.Admin_image)
            this.newImg = res.data.data.admin.Admin_image
          }
        })
      },
    },
    onLoad() {
      this.getAdmin()
    }
  }
</script>
<style lang="scss"></style>